home *** CD-ROM | disk | FTP | other *** search
-
- 2 May 1979
-
-
- IEN 90
-
-
-
-
-
-
- Multiplexing Protocol
-
-
-
-
- Danny Cohen
-
- Jon Postel
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2 May 1979
-
-
-
-
- Information Sciences Institute
- University of Southern California
- 4676 Admiralty Way
- Marina del Rey, California 90291
-
- (213) 822-1511
-
-
-
-
-
- IEN-90 D. Cohen
- J. Postel
- ISI
- 2 May 1979
-
-
-
- Multiplexing Protocol
- ---------------------
-
- Introduction
- ------------
-
- This Multiplexing Protocol is defined to allow the combining of
- transmission units of different higher level protocols in one
- transmission unit of a lower level protocol. Only messages with the
- same Internet Protocol (IN) [1] header, with the possible exception of
- the protocol field may be combined. For example, the msg (H1, B1) and
- the message (H2, B2), where Hi and Bi are the headers and the bodies of
- the messages, respectively, may be combined (multiplexed) only if
- H=H1=H2. The combined messages are either (H, B1, B2) or (H, B2, B1).
-
- Since (H,D1)+(H,D2)=(H,D1+D2) resembles the notion of factoring, we
- sometime refer to this process as "factoring".
-
- The receiver of this combined message should treat it as if the two
- original messages, (H,D1), and (H,D2), arrived separately, in either
- order.
-
- The multiplexing is achieved by combining the individual messages,
- (H,B1) through (H,Bn), into a single message. This single message has
- an IN header which is equal to H, but having in the PROTOCOL field the
- value 18 which is the protocol number of the multiplexing protocol.
- This IN header is followed by all the message bodies, B1 through Bn.
- Each message body, Bi, is preceeded by a 4 octet multiplexing link.
- This link contain the number of the protocol to which this body is
- addressed. It also contain the total length of this portion (message
- body), including this multiplexing link. Since this link is not
- otherwise protected by a checksum, it also includes a checksum field
- which covers this multiplexing link.
-
- If an error is discovered in a checksum of some multiplexing header, the
- rest of the message, starting there, is ignored.
-
- If an unknown PROTOCOL field is discovered in any multiplexing header,
- this section, and only this one, is ignored.
-
-
-
-
- Cohen & Postel [page 1]
-
-
- 2 May 1979
- Multiplexing Protocol IEN-90
- Introduction
-
-
-
- The demultiplexing routine should be able to handle recursively
- multiplexed messages. This is to allow higher level protocol to
- demultiplex their own messages if they can be combined. Since such a
- multiplexed message may be multiplexed again by the IN level, a
- multi-level multiplexing results.
-
- This protocol assumes that the Internet Protocol is used as the
- underlying protocol.
-
- Format
- ------
-
-
- 0 7 8 15 16 31
- +--------+--------+----------------+
- | | | |
- | CS |Protocol| Length |
- | | | |
- +--------+--------+----------------+
-
- Multiplexing Header Format
-
- Fields
- ------
-
- CS is a checksum covering only this 32 bit multiplexing header. Until
- further notice, it is the exclusive OR of the other three octets in this
- header.
-
- Protocol is the number of the following protocol.
-
- Length is the length in octets of this header and the following protocol
- block. Hence, it must be at least 4.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [page 2] Cohen & Postel
-
-
- 2 May 1979
- IEN-90 Multiplexing Protocol
- Example
-
-
-
- Example
- -------
-
-
- 0 15 16 31
- +--------+--------+--------+--------+
- | CS |Protocol| Length |
- +--------+--------+--------+--------+
- | a transmission unit |
- | of some protocol |
- +--------+--------+--------+--------+
- | CS |Protocol| Length |
- +--------+--------+--------+--------+
- | a transmission unit |
- | of some protocol |
- +--------+--------+--------+--------+
- | CS |Protocol| Length |
- +--------+--------+--------+--------+
- | a transmission unit |
- | of some protocol |
- +--------+--------+--------+--------+
-
- Multiplexing Protocol Concept
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cohen & Postel [page 3]
-
-
- 2 May 1979
- Multiplexing Protocol IEN-90
- Example
-
-
-
-
- 0 15 16 31
- +--------+--------+--------+--------+
- | CS |datagram| Length = 20 | ----+
- +--------+--------+--------+--------+ |
- | source socket | dest. socket | |
- +--------+--------+--------+--------+ |
- | length = 8 | checksum | |
- +--------+--------+--------+--------+ |
- | data | |
- +--------+--------+--------+--------+ |
- | data | |
- +--------+--------+--------+--------+ <---+
- | CS | TCP | Length = 32 | ----+
- +--------+--------+--------+--------+ |
- | source port | destination port| |
- +--------+--------+--------+--------+ |
- | sequence number | |
- +--------+--------+--------+--------+ |
- | acknowledgment number | |
- +--------+--------+--------+--------+ |
- |offset control| window | |
- +--------+--------+--------+--------+ |
- | checksum | urgent pointer | |
- +--------+--------+--------+--------+ |
- | data | |
- +--------+--------+--------+--------+ |
- | data | |
- +--------+--------+--------+--------+ <---+
- | CS |datagram| Length = 16 | ----+
- +--------+--------+--------+--------+ |
- | source socket | dest. socket | |
- +--------+--------+--------+--------+ |
- | length = 4 | checksum | |
- +--------+--------+--------+--------+ |
- | data | |
- +--------+--------+--------+--------+ <---+
-
- Multiplexing Protocol Example
-
- Protocol Application
- --------------------
-
- The major use of this protocol is to allow several transmission units
- from differing (or the same) higher level protocols to be combined into
- one transmission unit of a lower level protocol.
-
-
-
- [page 4] Cohen & Postel
-
-
- 2 May 1979
- IEN-90 Multiplexing Protocol
- Protocol Number
-
-
-
- Protocol Number
- ---------------
-
- This is protocol 18 (22 octal) when used in the Internet Protocol.
- Other protocol numbers are listed in [2].
-
- Notes
- -----
-
- - If so desired, one has the option of applying this multiplexing
- protocol recursively.
-
- - The receiving process should never be able to tell if its messages
- were multiplexed or not. The multiplexing is totally transparent to
- the higher lever protocols.
-
- - Information from the external header (e.g., the IN header) is
- available to each protocol in the multiplexed message.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cohen & Postel [page 5]
-
-
- 2 May 1979
- Multiplexing Protocol IEN-90
- References
-
-
-
- References
- ----------
-
- [1] Postel, J., "Internet Datagram Protocol -- Version 4," IEN-80,
- USC-Information Sciences Institute, February 1979.
-
- [2] Postel, J., "Assigned Numbers," USC-Information Sciences
- Institute, RFC-755, IEN 93, May 1979.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [page 6] Cohen & Postel
-
-